﻿using PLCS.Application.Contracts.HisTaskApp.Dtos;
using PLCS.Application.Contracts.PLCReadDataApp.Dtos;

namespace PLCS.Application.Contracts.PLCReadDataApp;

public interface IPLCReadDataAppService : ICrudAppService<PLCReadDataDto, Guid, PagedResultRequestDto, PLCReadDataEditDto>
{
    Task<IEnumerable<PLCReadDataDto>> GetListAsync();

    Task<PLCReadDataDto> GetByNoAsync(string no);

    Task CreateListAsync(IEnumerable<PLCReadDataEditDto> inputs);

    Task UpdateAsync(PLCReadDataEditDto input);

    Task ChangeValueAsync(Guid Id, string value);

    Task DeleteAllAsync();

    Task<PagedResultDto<PLCReadDataDto>> GetListBySearchAsync(PagedResultRequestDto input, Guid? plcConfigId, string? startBit, string? deviceNo);
}